package com.iplant.aps.service.po.wms;

import com.fasterxml.jackson.annotation.JsonProperty;

import java.io.Serializable;
import java.util.Calendar;

/**
 * 线边库使用明细
 *
 * @author YouWang·Peng
 * 2022-3-28 15:05:30
 */
public class WMSLineEdgeLibraryItem implements Serializable {

    /**
     * 序列号
     */
    private static final long serialVersionUID = 1L;
    /**
     * 主键
     */
    public int ID = 0;
    /**
     * 线边库主键
     */
    public int WMSLineEdgeID = 0;
    /**
     * 车型ID
     */
    public int ProductID = 0;
    /**
     * 车型名称
     */
    public String ProductNo = "";
    /**
     * 修程ID
     */
    public int LineID = 0;
    /**
     * 修程名称
     */
    public String LineName = "";
    /**
     * 局段ID
     */
    public int CustomerID = 0;
    /**
     * 局段名称
     */
    public String CustomerName = "";
    /**
     * 订单ID
     */
    public int OrderID = 0;
    /**
     * WBS元素
     */
    public String WBSNo = "";
    /**
     * 车号
     */
    public String PartNo = "";
    /**
     * 工位ID
     */
    public int PartID = 0;
    /**
     * 工位名称
     */
    public String PartName = "";
    /**
     * 工序ID
     */
    public int PartPointID = 0;
    /**
     * 工序名称
     */
    public String PartPointName = "";
    /**
     * 物料ID
     */
    public int MaterialID = 0;
    /**
     * 物料名称
     */
    public String MaterialName = "";
    /**
     * 物料编号
     */
    public String MaterialNo = "";
    /**
     * 消耗数量
     */
    public double FQTY = 0.0;
    /**
     * 单位ID
     */
    public int UnitID = 0;
    /**
     * 单位名称
     */
    public String UnitText = "";
    /**
     * 最小包装
     */
    public double MinPacking = 0.0;
    /**
     * 创建时刻
     */
    public Calendar CreateTime = Calendar.getInstance();
    /**
     * 创建时刻文本
     */
    public String CreateTimeText = "";
    /**
     * 使用单号
     */
    public String UseTrackingNumber = "";

    /**
     * 配送单子项ID，不存
     */
    public int PickDemandItemID = 0;

    /**
     * 是否过账
     */
    public int IsPost = 0;
    /**
     * 过账信息
     */
    public String PostMsg = "";
    /**
     * 台车BOMitemID
     */
    public int APSBOMItemID = 0;
    /**
     * 批次号
     */
    public String BatchNumber = "";
    /**
     * 工区名称
     */
    public String AreaName = "";

    /**
     * 必换偶换
     */
    public int ReplaceType = 0;
    public String ReplaceTypeTxt = "";
    /**
     * 必修偶修
     */
    public int OutSourceType = 0;
    public String OutSourceTypeText = "";

    /**
     * 库存地点
     */
    public String Stock = "";

    /**
     * 项目库存号
     */
    public String ProjectStockNo = "";

    public WMSLineEdgeLibraryItem() {
        super();
    }

    public WMSLineEdgeLibraryItem(int iD, int wMSLineEdgeID, int productID, int lineID, int customerID, int orderID,
                                  String wBSNo, String partNo, int partID, String partName, int partPointID,
                                  String partPointName,
                                  int materialID, String materialName, String materialNo, double fQTY, int unitID,
                                  String unitText,
                                  double minPacking, Calendar createTime, String createTimeText, int wAPSBOMItemID) {
        super();
        ID = iD;
        WMSLineEdgeID = wMSLineEdgeID;
        ProductID = productID;
        LineID = lineID;
        CustomerID = customerID;
        OrderID = orderID;
        WBSNo = wBSNo;
        PartNo = partNo;
        PartID = partID;
        PartName = partName;
        PartPointID = partPointID;
        PartPointName = partPointName;
        MaterialID = materialID;
        MaterialName = materialName;
        MaterialNo = materialNo;
        FQTY = fQTY;
        UnitID = unitID;
        UnitText = unitText;
        MinPacking = minPacking;
        CreateTime = createTime;
        CreateTimeText = createTimeText;
        APSBOMItemID = wAPSBOMItemID;
    }

    @JsonProperty("ReplaceType")
    public int getReplaceType() {
        return ReplaceType;
    }

    public void setReplaceType(int replaceType) {
        ReplaceType = replaceType;
    }

    @JsonProperty("ReplaceTypeTxt")
    public String getReplaceTypeTxt() {
        return ReplaceTypeTxt;
    }

    public void setReplaceTypeTxt(String replaceTypeTxt) {
        ReplaceTypeTxt = replaceTypeTxt;
    }

    @JsonProperty("OutSourceType")
    public int getOutSourceType() {
        return OutSourceType;
    }

    public void setOutSourceType(int outSourceType) {
        OutSourceType = outSourceType;
    }

    @JsonProperty("OutSourceTypeText")
    public String getOutSourceTypeText() {
        return OutSourceTypeText;
    }

    public void setOutSourceTypeText(String outSourceTypeText) {
        OutSourceTypeText = outSourceTypeText;
    }

    @JsonProperty("Stock")
    public String getStock() {
        return Stock;
    }

    public void setStock(String stock) {
        Stock = stock;
    }

    @JsonProperty("AreaName")
    public String getAreaName() {
        return AreaName;
    }

    public void setAreaName(String areaName) {
        AreaName = areaName;
    }

    @JsonProperty("APSBOMItemID")
    public int getAPSBOMItemID() {
        return APSBOMItemID;
    }

    public void setAPSBOMItemID(int APSBOMItemID) {
        this.APSBOMItemID = APSBOMItemID;
    }

    @JsonProperty("ID")
    public int getID() {
        return ID;
    }

    @JsonProperty("WMSLineEdgeID")
    public int getWMSLineEdgeID() {
        return WMSLineEdgeID;
    }

    @JsonProperty("ProductID")
    public int getProductID() {
        return ProductID;
    }

    @JsonProperty("LineID")
    public int getLineID() {
        return LineID;
    }

    @JsonProperty("CustomerID")
    public int getCustomerID() {
        return CustomerID;
    }

    @JsonProperty("OrderID")
    public int getOrderID() {
        return OrderID;
    }

    @JsonProperty("WBSNo")
    public String getWBSNo() {
        return WBSNo;
    }

    @JsonProperty("PartNo")
    public String getPartNo() {
        return PartNo;
    }

    @JsonProperty("PartID")
    public int getPartID() {
        return PartID;
    }

    @JsonProperty("PartName")
    public String getPartName() {
        return PartName;
    }

    @JsonProperty("PartPointID")
    public int getPartPointID() {
        return PartPointID;
    }

    @JsonProperty("PartPointName")
    public String getPartPointName() {
        return PartPointName;
    }

    @JsonProperty("MaterialID")
    public int getMaterialID() {
        return MaterialID;
    }

    @JsonProperty("MaterialName")
    public String getMaterialName() {
        return MaterialName;
    }

    @JsonProperty("MaterialNo")
    public String getMaterialNo() {
        return MaterialNo;
    }

    @JsonProperty("FQTY")
    public double getFQTY() {
        return FQTY;
    }

    @JsonProperty("UnitID")
    public int getUnitID() {
        return UnitID;
    }

    @JsonProperty("UnitText")
    public String getUnitText() {
        return UnitText;
    }

    @JsonProperty("MinPacking")
    public double getMinPacking() {
        return MinPacking;
    }

    @JsonProperty("CreateTime")
    public Calendar getCreateTime() {
        return CreateTime;
    }

    @JsonProperty("CreateTimeText")
    public String getCreateTimeText() {
        return CreateTimeText;
    }

    public void setID(int iD) {
        ID = iD;
    }

    public void setWMSLineEdgeID(int wMSLineEdgeID) {
        WMSLineEdgeID = wMSLineEdgeID;
    }

    public void setProductID(int productID) {
        ProductID = productID;
    }

    public void setLineID(int lineID) {
        LineID = lineID;
    }

    public void setCustomerID(int customerID) {
        CustomerID = customerID;
    }

    public void setOrderID(int orderID) {
        OrderID = orderID;
    }

    public void setWBSNo(String wBSNo) {
        WBSNo = wBSNo;
    }

    public void setPartNo(String partNo) {
        PartNo = partNo;
    }

    public void setPartID(int partID) {
        PartID = partID;
    }

    public void setPartName(String partName) {
        PartName = partName;
    }

    public void setPartPointID(int partPointID) {
        PartPointID = partPointID;
    }

    public void setPartPointName(String partPointName) {
        PartPointName = partPointName;
    }

    public void setMaterialID(int materialID) {
        MaterialID = materialID;
    }

    public void setMaterialName(String materialName) {
        MaterialName = materialName;
    }

    public void setMaterialNo(String materialNo) {
        MaterialNo = materialNo;
    }

    public void setFQTY(double fQTY) {
        FQTY = fQTY;
    }

    public void setUnitID(int unitID) {
        UnitID = unitID;
    }

    public void setUnitText(String unitText) {
        UnitText = unitText;
    }

    public void setMinPacking(double minPacking) {
        MinPacking = minPacking;
    }

    public void setCreateTime(Calendar createTime) {
        CreateTime = createTime;
    }

    public void setCreateTimeText(String createTimeText) {
        CreateTimeText = createTimeText;
    }

    @JsonProperty("ProductNo")
    public String getProductNo() {
        return ProductNo;
    }

    public void setProductNo(String productNo) {
        ProductNo = productNo;
    }

    @JsonProperty("LineName")
    public String getLineName() {
        return LineName;
    }

    public void setLineName(String lineName) {
        LineName = lineName;
    }

    @JsonProperty("CustomerName")
    public String getCustomerName() {
        return CustomerName;
    }

    public void setCustomerName(String customerName) {
        CustomerName = customerName;
    }

    @JsonProperty("UseTrackingNumber")
    public String getUseTrackingNumber() {
        return UseTrackingNumber;
    }

    public void setUseTrackingNumber(String useTrackingNumber) {
        UseTrackingNumber = useTrackingNumber;
    }

    @JsonProperty("PickDemandItemID")
    public int getPickDemandItemID() {
        return PickDemandItemID;
    }

    public void setPickDemandItemID(int pickDemandItemID) {
        PickDemandItemID = pickDemandItemID;
    }

    @JsonProperty("IsPost")
    public int getIsPost() {
        return IsPost;
    }

    public void setIsPost(int isPost) {
        IsPost = isPost;
    }

    @JsonProperty("PostMsg")
    public String getPostMsg() {
        return PostMsg;
    }

    public void setPostMsg(String postMsg) {
        PostMsg = postMsg;
    }

    @JsonProperty("BatchNumber")
    public String getBatchNumber() {
        return BatchNumber;
    }

    public void setBatchNumber(String batchNumber) {
        BatchNumber = batchNumber;
    }

    @JsonProperty("ProjectStockNo")
    public String getProjectStockNo() {
        return ProjectStockNo;
    }

    public void setProjectStockNo(String projectStockNo) {
        ProjectStockNo = projectStockNo;
    }
}
